home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / boot / scsiDiskBoot / devQueue.h < prev    next >
Encoding:
C/C++ Source or Header  |  1989-06-13  |  1.6 KB  |  58 lines

  1. /*
  2.  * devQueue.h --
  3.  *
  4.  *    Declarations for the Device Queue interface.  This file defines the 
  5.  *    interface to the Sprite device queue routines used to order I/O
  6.  *    request for disk and other devices. 
  7.  *
  8.  *
  9.  * Copyright 1989 Regents of the University of California
  10.  * Permission to use, copy, modify, and distribute this
  11.  * software and its documentation for any purpose and without
  12.  * fee is hereby granted, provided that the above copyright
  13.  * notice appear in all copies.  The University of California
  14.  * makes no representations about the suitability of this
  15.  * software for any purpose.  It is provided "as is" without
  16.  * express or implied warranty.
  17.  *
  18.  * $Header: /sprite/src/kernel/dev/RCS/devQueue.h,v 1.3 89/05/24 07:53:27 rab Exp $ SPRITE (Berkeley)
  19.  */
  20.  
  21. #ifndef _DEVQUEUE
  22. #define _DEVQUEUE
  23.  
  24. /*
  25.  * Definitions in this file use the List_Links data structure.
  26.  */
  27. #include "list.h"
  28. #include "boot.h"
  29.  
  30.  
  31. /*
  32.  * DEV_QUEUE_FIFO_INSERT - InsertProc argument to Dev_QueueCreate specifing 
  33.  *               FIFO ordering.
  34.  * DEV_QUEUE_ANY_QUEUE_MASK - Mask to Dev_QueueGetNextFromSet specifing all
  35.  *                  queue sets.
  36.  */
  37.  
  38. #define    DEV_QUEUE_FIFO_INSERT    ((void (*)())NIL)
  39. #define    DEV_QUEUE_ANY_QUEUE_MASK ((unsigned int) 0xffffffff)
  40.  
  41. /* data structures 
  42.  * 
  43.  * DevCtrlQueues    - An anonymous pointer to structure containing the 
  44.  *              device queues of a controller.
  45.  * DevQueue        - An anonymous pointer to a structure containing a
  46.  *              device queue.
  47.  */
  48.  
  49. typedef struct DevCtrlQueues *DevCtrlQueues;
  50. typedef struct DevQueue         *DevQueue;
  51.  
  52. /* procedures */
  53.  
  54. #define    Dev_QueueInsert(devQueue, cmd)    ((boot_SendSCSICommand)(devQueue, cmd))
  55.  
  56.  
  57. #endif /* _DEVQUEUE */
  58.